Toward high-performance computer algebra with Maple

نویسنده

  • X. Li
چکیده

One of the main successes of the computer algebra community in the last 30 years has been the discovery of algorithms, called modular methods, that allow to keep the swell of the intermediate expressions under control. Without these methods, many applications of computer algebra would not be possible and the impact of computer algebra in scientific computing would be severely limited. Amongst the computer algebra systems which have emerged in the 70’s and 80’s, Maple and its developers have played an essential role in this area. Another major advance in symbolic computation is the development of implementation techniques for asymptotically fast (FFT-based) polynomial arithmetic. Computer algebra systems and libraries initiated in the 90’s, such as Magma and NTL, have been key actors in this effort: they increased in a spectacular manner the range of problems solvable by computer algebra systems. In this report, we present modpn, a Maple library dedicated to fast arithmetic for multivariate polynomials. The main objective of modpn is to provide highly efficient routines for supporting the implementation of modular methods in Maple. We demonstrate in this work that modpn allows us to re-implement core operations in Maple bringing huge performance increases and offering to Maple the ability of solving problems which were previously out of reach. 1 The modpn library: Bringing Fast Polynomial Arithmetic into Maple With the need for high performance in practical problems, research in symbolic computation has entered a new era where implementation techniques have become as important as theoretical developments. This phenomenon is heavily accentuated by the revival and the democratization of parallel architectures. The previous works in parallel symbolic computing are obsolete due to the emerging programing paradigms and architectures; they had also a limited impact and, the attention of the symbolic computation community was withdrawn from parallelism during the last decade. One of the themes of our MITACS project Mathematics of Computer Algebra and Analysis (MOCAA) is to deliver the mathematical algorithms, implementation techniques and software for symbolic computation to exploit these new computing resources, from SMP to multi-core laptops. In previous work [2, 7, 9] we have investigated the integration of asymptotically fast arithmetic operations into the computer algebra system AXIOM. Since AXIOM is based today on GNU Common Lisp (GCL), we took the following approach. We realized highly optimized implementations of our fast routines in C and made them available to the AXIOM programming environment through the kernel of GCL. Therefore, library functions written in the AXIOM high-level language could be compiled down to binary code and then linked against our C code. To observe significant speed-up factors, it was sufficient to enhance existing AXIOM polynomial types with our fast routines (for univariate multiplication, division, GCD etc.) and call them in existing generic packages (for instance, for univariate square-free factorization). See [9] for details. In the present report, we investigate the integration of fast arithmetic operations implemented in C into Maple. Most of Maple library functions are high-level interpreted code. This is the case for those of the

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Integrating High-Performance Polynomial Arithmetic into Maple

With the need of achieving high performance on practical problems, computer algebra systems devote more and more effort on implementation techniques. This phenomenon is certainly accentuated by the democratization of parallel architectures (multicores) and other hardware accelerating technologies. In this report, we describe the integration of a C library offering highly optimized routines for ...

متن کامل

TOWARD HIGH - PERFORMANCE POLYNOMIAL SYSTEM SOLVERS BASED ON TRIANGULAR DECOMPOSITIONS ( Spine title : Contributions to Polynomial System

This thesis is devoted to the design and implementation of polynomial system solvers based on symbolic computation. Solving systems of non-linear, algebraic or differential equations, is a fundamental problem in mathematical sciences. It has been studied for centuries and still stimulates many research developments, in particular on the front of high-performance computing. Triangular decomposit...

متن کامل

A Study in the Integration of Computer Algebra Systems: Memory Management in a Maple–aldor Environment

We have undertaken to study the problems which arise in the tight coupling of computer algebra systems. By this we mean having multiple computer algebra systems share the same address space so that objects created by one system can be passed passed by reference in calls to another system. As an interesting practical problem, we have explored the case of using Aldor code from within the Maple sy...

متن کامل

Analyzing Algebraic Curves by Cluster Computing

We describe a parallel solution to the problem of resolving non-ordinary singularities of a plane algebraic curve. The original sequential program is implemented in the software library CASA on top of the computer algebra system Maple. The new parallel version is based on Distributed Maple, a distributed programming extension written in Java. We evaluate the performance of the program in a clus...

متن کامل

Design and implementation of a grid extension for Maple

One of the important issues facing the development of the grid as a computational framework of the future is availability of grid-enabled software. In this context, we discuss possible approaches to constructing a grid-enabled version of a computer algebra system. Our case study involves Maple: the proposed Maple2g package allows the connection between Maple and the computational grids based on...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008